package lab02.test24;
import java.util.Scanner;
public class Test24 {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int i;


        System.out.println("请输入第一个日期");
        String date1=input.nextLine();
int num1=Integer.valueOf(date1);//将字符串转换成数值
int firstyear,firstmonth,firstday;
        int[] firstnum1=new int[date1.length()];
for(i=0;i<date1.length();i++){
    firstnum1[i]=Integer.valueOf(String.valueOf(date1.charAt(i)));
}//将字符串的每一个字符转换成相应的整型数组
firstyear=firstnum1[0]*1000+firstnum1[1]*100+firstnum1[2]*10+firstnum1[3];
        //利用整型数组相加得到相应年份
        firstmonth=firstnum1[4]*10+firstnum1[5];
        //利用整型数组相加得到相应月份
        firstday=firstnum1[6]*10+firstnum1[7];
//利用整型数组相加得到相应某月天数


        System.out.println("请输入第二个日期");
        String date2=input.nextLine();
        int num2=Integer.valueOf(date2);//将字符串准换成数值
        int secondyear,secondmonth,secondday;
        int[] secondnum2=new int[date2.length()];
        for(i=0;i<date2.length();i++){
            secondnum2[i]=Integer.valueOf(String.valueOf(date2.charAt(i)));
        }//将字符串的每一个字符转换成相应的整型数组
       secondyear=secondnum2[0]*1000+secondnum2[1]*100+secondnum2[2]*10+secondnum2[3];
        //利用整型数组相加得到相应年份
       secondmonth=secondnum2[4]*10+secondnum2[5];
        //利用整型数组相加得到相应月份
       secondday=secondnum2[6]+secondnum2[7];
//利用整型数组相加得到相应某月天数


       int[] month1=new int[12];
        for(i=1;i<firstmonth;i++){//当年开年到你所输入当年日期相距天数
            if(i==4||i==6||i==9||i==11){
                month1[i]=30;
            }
            if (i==1|i==3|i==5|i==7|i==8|i==10|i==12){
                month1[i]=31;
            }
            if(i==2) {
                if((firstyear%4==0&&firstyear%100!=0)||firstyear%400==0) {
                    month1[i] = 29;
                }
                else {
                    month1[i] = 28;
                }
            }
            firstday=firstday+month1[i];
        }




        int[] month2=new int[12];
        for(i=1;i<secondmonth;i++){//当年开年到你所输入当年日期相距天数
            if(i==4|i==6|i==9|i==11){
                month2[i]=30;
            }
            if (i==1|i==3|i==5|i==7|i==8|i==10|i==12){
                month2[i]=31;
            }
            if(i==2) {
                if((secondyear%4==0&&secondyear%100!=0)||secondyear%400==0) {
                    month2[i] = 29;
                }
                else {
                    month2[i] = 28;
                }
            }
            secondday=secondday+month2[i];
        }



        int sum=0;
        if(num1>=num2){
           for (i=0;i<=firstyear-secondyear-1;i++){//计算出几年间相差的完整天数
               if (((secondyear+i)%4==0&&(secondyear+i)!=0)||(secondyear+i)%400==0){
                   sum=sum+366;
               }
               else {
                   sum=sum+365;
               }
           }
sum=sum-secondday+firstday;
            System.out.println("相差日期为："+sum+"天");
        }



        if(num1<num2){
            for (i=0;i<=secondyear-firstyear-1;i++){//计算出几年间相差的完整天数
                if (((firstyear+i)%4==0&&(firstyear+i)!=0)||(firstyear+i)%400==0){
                    sum=sum+366;
                }
                else {
                    sum=sum+365;
                }
            }
            sum=sum-firstday+secondday;
            System.out.println("相差日期为："+sum+" 天");
        }

    }
}
